using System.Data.Entity.ModelConfiguration;
using CodeSaude.Domain.Entities;

namespace CodeSaude.Infrastructure.Data.EntityConfig
{
    public class EspecialidadeMap : EntityTypeConfiguration<Especialidade>
    {
        public EspecialidadeMap()
        {
            // Primary Key
            HasKey(t => t.EspecialidadeId);

            // Properties
            Property(t => t.NomeEspecialidade)
                .HasMaxLength(90);

            Property(t => t.LinkAtendimento)
                .HasMaxLength(100);

            Property(t => t.Cbo)
                .HasMaxLength(15);

            Property(t => t.SiglaConselho)
                .HasMaxLength(10);

            // Table & Column Mappings
            ToTable("especialidade");
            Property(t => t.EspecialidadeId).HasColumnName("id_especialidade");
            Property(t => t.NomeEspecialidade).HasColumnName("nome_especialidade");
            Property(t => t.Especialista).HasColumnName("especialista");
            Property(t => t.LinkAtendimento).HasColumnName("link_atendimento");
            Property(t => t.IdSituacao).HasColumnName("id_situacao");
            Property(t => t.Cbo).HasColumnName("cbo");
            Property(t => t.SiglaConselho).HasColumnName("sigla_conselho");
        }
    }
}
